Skip to content

Conversation

@thomson-t
Copy link
Contributor

@thomson-t thomson-t commented Jul 22, 2025

Summary

  • Updated RNMParticle and RNMPRokt to support new architecture with TurboModules.
  • Refactored imports and method signatures to align with new architecture standards.
  • Introduced RoktNativeLayoutComponentView for new architecture layout handling.
  • Added method implementations for better compatibility with new architecture.
  • Updated sample app Podfile to enable new architecture by default.

Testing Plan

Tested with new architecture flag enabled and disabled

Master Issue

Closes https://go.mparticle.com/work/REPLACEME

- Updated RNMParticle and RNMPRokt to support new architecture with TurboModules.
- Refactored imports and method signatures to align with new architecture standards.
- Introduced RoktNativeLayoutComponentView for new architecture layout handling.
- Added method implementations for better compatibility with new architecture.
- Updated sample app Podfile to enable new architecture by default.
Copilot AI review requested due to automatic review settings July 22, 2025 05:39
@thomson-t thomson-t requested a review from a team as a code owner July 22, 2025 05:39
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This pull request implements React Native's new architecture support for iOS by migrating the mParticle React Native SDK from the legacy bridge to TurboModules and Fabric components.

  • Enables new architecture by default in sample app and updates module configurations
  • Adds new architecture-specific component views and TurboModule implementations
  • Refactors method signatures to support both legacy and new architecture patterns

Reviewed Changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
sample/ios/Podfile Enables new architecture by setting RCT_NEW_ARCH_ENABLED to '1'
react-native-mparticle.podspec Updates dependency checks and changes React dependency from 'React' to 'React-Core'
ios/RNMParticle/RoktNativeLayoutComponentView.mm New Fabric component view implementation for Rokt layout handling
ios/RNMParticle/RoktNativeLayoutComponentView.h Header file for the new Fabric component view
ios/RNMParticle/RNMParticle.m Major refactoring with TurboModule support, method signature updates, and dual architecture compatibility
ios/RNMParticle/RNMParticle.h Updates interface to support both legacy bridge and TurboModule protocols
ios/RNMParticle/RNMPRokt.m Adds TurboModule support and new architecture-specific view handling
ios/RNMParticle/RNMPRokt.h Updates interface declarations for new architecture compatibility

Copy link
Contributor

@BrandonStalnaker BrandonStalnaker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By and large seems good. I'm a little concerned about ios/RNMParticle/RNMParticle.mm just cause with rename it was hard to pick out the changes in the code. Doubel check your imports and I think we will be good to go.

- Added new entries to .npmignore for Android and iOS build artifacts and IDE files.
- Updated Xcode project configuration to include new source files and remove deprecated ones.
@thomson-t thomson-t merged commit 69689c9 into development Jul 23, 2025
16 checks passed
@thomson-t thomson-t deleted the feat/new-architecture-ios branch July 23, 2025 04:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants